package com.portalito.android.dto;

import java.util.ArrayList;
import java.util.Iterator;

/* Data Transfer Object */

public class Usuario extends ObjetoBase {
	
	private ArrayList<Almacen> almacenes;
	
	private Almacen almacen;
	private Proveedor proveedor;
	private String usuario;
	private String clave;
	private String nombre;
	private boolean permisoRecibir;
	
	public Usuario() {
		almacenes = new ArrayList<Almacen>();
	}
	
	public void vaciarAlmacenes() {
		almacenes.clear();
	}
	
	public boolean agregarAlmacen(Almacen almacen) {
		if(almacen != null) {
			almacenes.add(almacen);
			return true;
		}
		return false;
	}
	
	public boolean tieneAlmacenes() {
		return almacenes.isEmpty() == false;
	}
	
	public int getCantidadAlmacenes() {
		return almacenes.size();
	}
	
	public Iterator<Almacen> obtenerAlmacenesIterator() {
		return almacenes.iterator();
	}
	
	public ArrayList<Almacen> getAlmacenes() {
		return almacenes;
	}
	
	public String getAlmacenId() {
		if(almacen != null) {
			return almacen.getId();
		}
		return "";
	}
	
	public String getAlmacenNombre() {
		if(almacen != null) {
			return almacen.getNombre();
		}
		return "";
	}
	
	public Almacen getAlmacen() {
		return almacen;
	}
	
	public void setAlmacen(Almacen almacen) {
		this.almacen = almacen;
	}
	
	public Proveedor getProveedor() {
		return proveedor;
	}
	
	public void setProveedor(Proveedor proveedor) {
		this.proveedor = proveedor;
	}
	
	public String getProveedorNombre() {
		if(proveedor != null) {
			return proveedor.getNombre();
		}
		return "";
	}
	
	public String getUsuario() {
		if(usuario != null) {
			return usuario;
		}
		return "";
	}
	
	public void setUsuario(String usuario) {
		this.usuario = usuario;
	}

	public String getClave() {
		return clave;
	}

	public void setClave(String clave) {
		this.clave = clave;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public boolean tienePermisoRecibir() {
		return permisoRecibir;
	}

	public void setPermisoRecibir(boolean permisoRecibir) {
		this.permisoRecibir = permisoRecibir;
	}
	
	public String toString() {
		return nombre;
	}
}
